package com.ruoyi.system.service.impl;

import java.util.List;
import com.ruoyi.common.annotation.DataScope;
import com.ruoyi.common.utils.DateUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.ruoyi.system.mapper.DzTjfyMapper;
import com.ruoyi.system.domain.DzTjfy;
import com.ruoyi.system.service.IDzTjfyService;


import com.ruoyi.common.core.domain.entity.SysRole;
import com.ruoyi.common.core.domain.entity.SysUser;
import com.ruoyi.common.utils.DateUtils;
import com.ruoyi.common.utils.SecurityUtils;
import com.ruoyi.system.service.ISysRoleService;
import com.ruoyi.system.mapper.DzHuiyuanMapper;
import com.ruoyi.system.domain.DzHuiyuan;
import com.ruoyi.system.service.IDzHuiyuanService;

/**
 * 推荐房源Service业务层处理
 * 
 * @author ruoyi
 * @date 2023-09-15
 */
@Service
public class DzTjfyServiceImpl implements IDzTjfyService 
{
    @Autowired
    private DzTjfyMapper dzTjfyMapper;

    @Autowired
    private ISysRoleService sysRoleService;

    @Autowired
    private IDzHuiyuanService dzHuiyuanService;

    /**
     * 查询推荐房源
     * 
     * @param tfId 推荐房源主键
     * @return 推荐房源
     */
    @Override
    public DzTjfy selectDzTjfyByTfId(Long tfId)
    {
        return dzTjfyMapper.selectDzTjfyByTfId(tfId);
    }

    /**
     * 查询推荐房源列表
     * 
     * @param dzTjfy 推荐房源
     * @return 推荐房源
     */
    @Override
    @DataScope(deptAlias = "d", userAlias = "u")
    public List<DzTjfy> selectDzTjfyList(DzTjfy dzTjfy)
    {

        //权限控制
        return dzTjfyMapper.selectDzTjfyList(dzTjfy);
    }

    @Override
    public List<DzTjfy> selectDzTjfyListWeb(DzTjfy dzTjfy)
    {
        return dzTjfyMapper.selectDzTjfyList(dzTjfy);
    }

    /**
     * 新增推荐房源
     * 
     * @param dzTjfy 推荐房源
     * @return 结果
     */
    @Override
    public int insertDzTjfy(DzTjfy dzTjfy)
    {
        dzTjfy.setCreateTime(DateUtils.getNowDate());
        return dzTjfyMapper.insertDzTjfy(dzTjfy);
    }

    /**
     * 修改推荐房源
     * 
     * @param dzTjfy 推荐房源
     * @return 结果
     */
    @Override
    public int updateDzTjfy(DzTjfy dzTjfy)
    {
        return dzTjfyMapper.updateDzTjfy(dzTjfy);
    }

    /**
     * 批量删除推荐房源
     * 
     * @param tfIds 需要删除的推荐房源主键
     * @return 结果
     */
    @Override
    public int deleteDzTjfyByTfIds(Long[] tfIds)
    {
        return dzTjfyMapper.deleteDzTjfyByTfIds(tfIds);
    }

    /**
     * 删除推荐房源信息
     * 
     * @param tfId 推荐房源主键
     * @return 结果
     */
    @Override
    public int deleteDzTjfyByTfId(Long tfId)
    {
        return dzTjfyMapper.deleteDzTjfyByTfId(tfId);
    }
}
